home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / ast_text / faqs / obernfqs < prev    next >
Text File  |  1993-06-28  |  10KB  |  268 lines

  1. Path: senator-bedfellow.mit.edu!enterpoop.mit.edu!gatech!howland.reston.ans.net!ux1.cso.uiuc.edu!uwm.edu!ogicse!psgrain!m2xenix!mikeg
  2. From: mikeg@psg.com (Mike Gallo)
  3. Newsgroups: comp.lang.oberon,comp.answers,news.answers
  4. Subject: Comp.lang.oberon FAQ (monthly)
  5. Summary: This posting contains a list of Frequently Asked Questions
  6.      (and their answers) about Oberon.  It should be read by anyone
  7.      who wishes to post to the Comp.lang.oberon newsgroup.
  8. Message-ID: <1993Jun12.002120.20557@psg.com>
  9. Date: 12 Jun 93 00:21:20 GMT
  10. Article-I.D.: psg.1993Jun12.002120.20557
  11. Expires: Thu, 1 Jul 1993 07:00:00 GMT
  12. Followup-To: comp.lang.oberon
  13. Organization: PSGnet, Portland Oregon US
  14. Lines: 250
  15. Approved: news-answers-request@MIT.Edu
  16. Xref: senator-bedfellow.mit.edu comp.lang.oberon:404 comp.answers:957 news.answers:9311
  17.  
  18. Archive-name: Oberon-FAQ
  19.  
  20.      (*  * *  * *  * *  * *  * *  * *  * *  * *  * *  * *  *)
  21.  
  22.      Thanks to all who have contributed!  Further additions and
  23. corrections are welcome.
  24.  
  25. mikeg@psg.com
  26.  
  27.      (*  * *  * *  * *  * *  * *  * *  * *  * *  * *  * *  *)
  28.  
  29. CONTENTS
  30.  
  31. (1)  Oberon
  32. (2)  Oberon-2
  33. (3)  Modula-3, Object Oberon, and Seneca
  34. (4)  The Oberon system
  35. (5)  The Gadgets system
  36. (6)  For more information
  37. (7)  To get an implementation of Oberon
  38.  
  39.  
  40. (1)  OBERON
  41.  
  42. From the release notes to ETH's Oberon
  43.  
  44.           Oberon is both a programming language and an
  45.      operating environment.  It is the final outcome of a
  46.      research project whose aim was an extensible, highly
  47.      integrated and compact operating platform for single-
  48.      user, personal workstations.
  49.  
  50. From "From Modula To Oberon"
  51.  
  52.           The language Oberon has evolved from Modula-2 and
  53.      incorporates the experiences of many years of programming
  54.      in Modula-2.  A significant number of features have been
  55.      eliminated.  They appear to have contributed more to
  56.      language and compiler complexity than to genuine power
  57.      and flexibility of expression.  A small number of
  58.      features have been added, the most significant one being
  59.      the concept of type extension [inheritance].  
  60.           The evolution of a new language that is smaller, yet
  61.      more powerful than its ancestor is contrary to common
  62.      practices and trends, but has inestimable advantages. 
  63.      Apart from simpler compilers, it results in a concise
  64.      defining document, an indispensable prerequisite for any
  65.      tool that must serve in the construction of sophisticated
  66.      and reliable systems. 
  67.  
  68.  
  69. (2)  OBERON-2
  70.  
  71. From "Differences between Oberon and Oberon-2"
  72.  
  73.           Oberon-2 is a true extension of Oberon.  One
  74.      important goal for Oberon-2 was to make object-oriented
  75.      programming easier without sacrificing the conceptual
  76.      simplicity of Oberon.  After three years of using Oberon
  77.      and its experimental offspring Object Oberon, we merged
  78.      our experiences into a single refined version of Oberon. 
  79.      The new features of Oberon-2 are type-bound procedures
  80.      [virtual methods], read-only export of variables and
  81.      record fields, open arrays as pointer base types, and a
  82.      with statement with variants.  The for statement is
  83.      reintroduced after having been eliminated in the step
  84.      from Modula-2 to Oberon. 
  85.  
  86.  
  87. (3)  MODULA-3, OBJECT OBERON, AND SENECA
  88.  
  89.      Modula-3 is a language designed by DEC Software Research
  90. Center.  Although also a descendant (but not a superset) of Modula-
  91. 2, it is otherwise unrelated to Oberon.  Unless they bear on
  92. Oberon, discussions about Modula-3 are better directed to
  93. Comp.lang.modula3.
  94.      Object Oberon is a now defunct, experimental extension of
  95. Oberon featuring "classes", structures somewhere in between modules
  96. and records.  It evolved into Oberon-2.
  97.      Seneca (soon to be renamed) is a variant of Oberon focusing on
  98. numerical programming.  It is still under development by R.
  99. Griesemer, but a new report is expected to come out later this
  100. year.
  101.  
  102.  
  103. (4)  THE OBERON SYSTEM
  104.  
  105. From thutt@access.digex.com (Taylor Hutt)
  106.  
  107.           Oberon, the system, is a somewhat graphical user
  108.      interface (Version 3.0 will be more graphical).  Gone are
  109.      the concepts of 'mode' (like insert/overstrike mode of a
  110.      word processor).  The mouse clicks always mean the same
  111.      thing.  However, even though the clicks mean the same
  112.      thing, they have complicated the process (for a novice)
  113.      by creating a new concept called the interclick. 
  114.      Basically, you press a mouse button, hold it down, and
  115.      then press another mouse button.  With three buttons,
  116.      this can be confusing in the beginning.  Button clicks
  117.      provide messages for the system to pass around to the
  118.      viewers.  
  119.           A viewer is a system which handles all open windows
  120.      of a particular type.  When you install Oberon, it comes
  121.      with a Text viewer, and a Graphic viewer.  You, the
  122.      programmer, could easily make a SpreadSheet viewer or a
  123.      AST viewer with little or no effort.  It is up to the
  124.      programmer of the Viewer to determine how output will be
  125.      displayed. (Thus, there is no 'one' answer to how text is
  126.      to be displayed on the screen).  Oberon sends the proper
  127.      messages to the proper viewer, and it is the
  128.      responsibility of the Viewer to maintain the viewed area.
  129.           One of Oberon's biggest advantages is portability. 
  130.      The language is defined more rigidly than many other
  131.      languages, thus source can be ported virtually to any
  132.      other Oberon system.  Data files are also compatible,
  133.      which is really nice.
  134.  
  135.  
  136. (5)  THE GADGETS SYSTEM
  137.  
  138. From psaladin@iiic.ethz.ch (Patrick Saladin)
  139.  
  140.           The Gadget-System is an experimental system to
  141.      manage graphical user interfaces (GUI). It provides the
  142.      design of GUIs at run-time, which are based on basic
  143.      elements, socalled Gadgets. The system is shipped with
  144.      often used Gadgets, eg. buttons, sliders, file-browsers
  145.      up to more complex ones, like a picture-editor. Users
  146.      combine Gadgets at run-time (socalled composition) to
  147.      build more complex Gadgets out of simpler ones. These
  148.      combined Gadgets act as independent units, which can be
  149.      used in the environment. For example in texts or in other
  150.      more complex Gadgets again. They also are editable at
  151.      run-time, where ever they occur. GUIs can be created
  152.      without the need of their application, it is also
  153.      possible to add a GUI to textbased Oberon applications.As
  154.      a consequence, users can create their own GUIs, depending
  155.      on their habits and taste, they can take bits out of
  156.      existing applications and insert them somewhere else. As
  157.      time passes, more and more different kinds of Gadgets
  158.      will be available. Additionally, programmers can build
  159.      other Gadget, which provide new functions.This can be
  160.      achieved by extending existing Gadgets (OO-technique) or
  161.      implementing  new types of Gadgets. The Gadget-system
  162.      uses the Oberon-Languagever.1. It can easily be learned
  163.      if one understands the principles of the Oberon-system.
  164.  
  165.  
  166. (6)  FOR MORE INFORMATION
  167.  
  168.      Complete PostScript documentation from ETH is available by
  169. anonymous ftp from:
  170.  
  171.      neptune.inf.ethz.ch:/Oberon/Docu
  172.      gatekeeper.dec.com:/pub/plan/Oberon/Docu
  173.  
  174. "Oberon: A Glimpse at the Future" by Dick Pountain
  175. BYTE
  176. May 1993
  177.  
  178. "Oberon" by Dick Pountain
  179. BYTE
  180. March 1991
  181.  
  182. "From Modula to Oberon" by N. Wirth
  183. Software: Practice and Experience
  184. 18,7 (July 1988) 661-670
  185.  
  186. "The Programming Language Oberon" by N. Wirth
  187. Software: Practice and Experience
  188. 18,7 (July 1988) 671-690
  189.  
  190. "The Oberon System" by N. Wirth and J. Gutknecht
  191. Software: Practice and Experience
  192. 19,9 (September 1989) 857-893
  193.  
  194. The Oberon System: User Guide and Programmer's Manual by M. Reiser,
  195. ACM Press 1992; ISBN 0-201-54422-9
  196.  
  197. Programming in Oberon: Steps Beyond Pascal and Modula-2 by M.
  198. Reiser and N. Wirth, ACM Press 1992; ISBN 0-201-56543-9
  199.  
  200. Project Oberon: The Design of an Operating System and Compiler by
  201. N. Wirth and J. Gutknecht, ACM Press 1992; ISBN 0-201-54428-8
  202.  
  203. Object Oriented Programming in Oberon-2 by H. Moessenboeck,
  204. Springer-Verlag 1993; ISBN 3-650-56411-X
  205.  
  206. A New Approach to Formal Language Definition and Its Application to
  207. Oberon by M. Odersky, Verlag der Fachvereine Zuerich 1989; ISBN 3-
  208. 7281-1732-3
  209.  
  210.  
  211. (7)  TO GET AN IMPLEMENTATION OF OBERON
  212.  
  213.      The original project was launched and carried out by N. Wirth
  214. and J. Gutknecht for the Ceres workstation.  Now, freeware versions
  215. of the Oberon language and system are available for numerous
  216. commercial machines, among them Macintosh, IBM RS/6000, DEC
  217. station, SPARC station and IBM PC/386 compatibles.  These are
  218. available by anonymous ftp from:
  219.  
  220.      neptune.inf.ethz.ch:/Oberon
  221.      gatekeeper.dec.com:/pub/plan/Oberon
  222.  
  223. For Oberon compilers developed outside ETH, contact:
  224.  
  225. VAX/VMS:
  226. ModulaWare GmbH, Wilhelmstr. 17A, D-W 8520 Erlangen/F.R.Germany  
  227. Modula-2 & Oberon-2 Compiler Manufactur
  228. Tel. +49 (9131) 208395, Fax +49 (9131) 28205.
  229. E-mail/Internet:
  230. 100023.2527@compuserve.com
  231. g_dotzel@ame.nbg.sub.org
  232.  
  233. MS-DOS:
  234. Oberon-M (freeware)
  235. neptune.inf.ethz.ch:/Oberon/Oberon-M
  236. gatekeeper.dec.com:/pub/plan/Oberon/Oberon-M
  237. (N.B., Oberon-M is independently produced and has no relation to
  238. ETH or DEC)
  239.  
  240. Real Time Associates Ltd.
  241. Canning House, 59 Canning Road
  242. Croydon, Surrey, CRO 6QF
  243. England
  244. Tel.: 0044-81-656 7333
  245. Fax: 0044-81-655 0401
  246. E-mail: 100023.145@CompuServe.COM
  247.  
  248. COP2 (partial Oberon to C translator)
  249. E-mail: thutt@access.digex.com (Taylor Hutt)
  250.  
  251. Amiga:
  252. A+L AG
  253. Daederiz 61
  254. CH-2540 Grenchen
  255. Tel.: +41 (65) 52 03 11
  256.  
  257. DECstation (Ultrix, OSF/1), Intel386 (SVR4, OS2, Solaris), Sparc
  258. (Solaris)
  259. Office of Commercial Services
  260. Queensland University of Technology
  261. GPO box 2434, Brisbane Q4001
  262. Australia
  263. -- 
  264.  
  265. This is patently absurd; but whoever wishes to become a 
  266. philosopher must learn not to be frightened by absurdities. 
  267.                 -- Bertrand Russell
  268.